Стили добавлять мы научились попробуем, теперь изменять стили на "лету". Добавим в таблице ещё один стиль, который бы отображал Id покупателя вместо его имени.
DataGridTableStyle ts1 = new DataGridTableStyle();
ts1.MappingName = "Customers";
if(ts1.GridColumnStyles.Count == 0)
{
DataGridTextBoxColumn gc1 = new DataGridTextBoxColumn();
ts1.GridColumnStyles.Add(gc1);
gc1.MappingName = "customer_id";
gc1.HeaderText = "Id покупателя";
Попробуем откомпилировать проект и попробуем запустить, у нас возникнет ошибка так как к одной таблице в базе можно применять только один стиль в текущий момент. Поэтому
ts1.MappingName = "";
Добавим теперь к форме кнопку, при нажатии на которую теперь бы у нас изменялся стиль отображения данных на другой. Вот тело функции
FirstSecond = !FirstSecond;
ShowTables.TableStyles[0].MappingName = "";
ShowTables.TableStyles[1].MappingName = "";
if(FirstSecond)
{
ShowTables.TableStyles[0].MappingName = "Customers";
}
else
{
ShowTables.TableStyles[1].MappingName = "Customers";
}
Сперва мы установим для обеих MappingName в "", чтобы не возникало проблем
ShowTables.TableStyles[0].MappingName = ""; ShowTables.TableStyles[1].MappingName = "";
И затем установим нужный стиль присвоив MappingName имя таблицы.
